/*
 * 描述： <描述>
 * 修改人： rain
 * 修改时间： 2016年8月9日
 * 项目： rainhy-config
 */
package com.rainhy.config.manager.xml;

import com.rainhy.config.manager.ConfigPropertyParse;
import com.thoughtworks.xstream.annotations.XStreamAlias;
import com.thoughtworks.xstream.annotations.XStreamAsAttribute;

/**
 * 配置属性
 * 
 * @author rain
 * @version [版本号, 2016年8月9日]
 * @see [相关类/方法]
 * @since [产品/模块版本]
 */
@XStreamAlias("config")
public class ConfigPropertyXmlParse implements ConfigPropertyParse {
    
    /** 状态:true可见 false不可见,默认可见 */
    @XStreamAsAttribute
    private Boolean viewAble = true;
    
    /** 配置属性是否可编辑:默认为可编辑 */
    @XStreamAsAttribute
    private Boolean editAble = true;
    
    /** 配置资源名 */
    private String name;
    
    /** 关键字(所有配置的关键字都不能重复) */
    private String key;
    
    /** 实际值 */
    private String value;
    
    /** 配置资源描述信息 */
    private String description;
    
    /** 配置资源描述信息 */
    @Override
    public String getDescription() {
        return this.description;
    }
    
    /** 关键字(所有配置的关键字都不能重复) */
    @Override
    public String getKey() {
        return this.key;
    }
    
    /** 配置资源名 */
    @Override
    public String getName() {
        return this.name;
    }
    
    /** 实际值 */
    @Override
    public String getValue() {
        return this.value;
    }
    
    /** 配置属性是否可编辑:默认为可编辑 */
    @Override
    public boolean isEditAble() {
        return this.editAble == null ? true : editAble.booleanValue();
    }
    
    /** 状态:true可见 false不可见,默认可见 */
    @Override
    public boolean isViewAble() {
        return this.viewAble == null ? true : viewAble.booleanValue();
    }
}
